#!/bin/bash
################### 自动化安装docker脚本 #####################
# 执行之前：
# 	1. 去除特殊字符：sed -i 's/\r//' install_docker.sh
# 	2. 添加执行权限：chmod +x install_docker.sh
# 执行命令：./install_docker.sh
# 执行之后：
# 脚本说明：
#########################################################

echo "----------0.准备环境----------------"
# 安装yum工具类
yum -y install yum-utils
# 添加阿里云docker-ce仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
echo "准备环境OK"

echo "----------1.卸载旧版本docker----------------"
# 卸载旧版本docker（如果存在才执行，否则不执行）
yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
echo "remove old version success!"

echo "----------2.安装docker(社区版)----------------"
#默认安装yum源里的最新版
yum install -y docker-ce docker-ce-cli containerd.io
# 也可以安装指定版本docker
#yum install -y docker-ce-20.10.7 docker-ce-cli-20.10.7  containerd.io-1.4.6
# 启动docker，并设置开机自启动
systemctl enable docker --now
# 配置阿里云镜像加速器
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF
# 重新加载配置文件
systemctl daemon-reload
# 重启docker
systemctl restart docker
echo "install docker success!"

echo "----------4.测试docker是否安装成功----------------"
echo "docker --version: " $(docker --version)
echo "docker info: " $(docker info)